<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>下载文件</title>
<script>
//https://blog.csdn.net/qq_40011214/article/details/108609377
function getBlob(url, cb) {
	var xhr = new XMLHttpRequest();
	xhr.open("GET", url, true);
	xhr.responseType = "blob";
	xhr.onload = function() {
	if (xhr.status === 200) {
	  cb(xhr.response);
	}
	};
	xhr.send();
}
 
function saveAs(blob, filename) {
  if (window.navigator.msSaveOrOpenBlob) {
    navigator.msSaveBlob(blob, filename);
  } else {
    var link = document.createElement("a");
    var body = document.querySelector("body");

    link.href = window.URL.createObjectURL(blob);
    link.download = filename;

    // fix Firefox
    link.style.display = "none";
    body.appendChild(link);

    link.click();
    body.removeChild(link);

    window.URL.revokeObjectURL(link.href);
  }
}

function download(url, filename) {            	
  getBlob(url, function(blob) {
    saveAs(blob, filename);
  });
}
</script>
</head>
<body>
<button type="button" onclick="download('http://leochenandroid.gitee.io/stock/apk.html','test1.apk')">修改文件名后进行下载1</button>
<button type="button" onclick="download('apk.html','test2.apk')">修改文件名后进行下载2</button>
<button type="button" onclick="download('apk.apk','test3.apk')">修改文件名后进行下载3</button>
</body>
</html>